Systems and methods for customized camera views in virtualized environments

ABSTRACT

Systems and methods for providing customized camera views of virtualized environments are provided herein. In one embodiment a method includes detecting a gameplay event of interest within a virtual gaming environment and displaying a customized camera view of the gameplay event of interest based on user input receiving during traversal of a projectile from a weapon to a target. The customized camera view has a focal point of the projectile.

FIELD OF THE INVENTION

The present technology is directed to video game control systems, andmore particularly, but not by limitation, to systems and methods thatallow a user to selectively control a gameplay event of interest withina video game by creating customized camera views during an event time.

SUMMARY

According to some embodiments, the present technology is directed to amethod comprising: (a) detecting discharging of a weapon within avirtual gaming environment during a gameplay event of interest; (b)providing an interactive user interface that receives user input tocreate a customized camera viewing experience of the gameplay event ofinterest involving a target; (c) receiving the user input from theinteractive user interface; and (d) providing a customized camera viewof the gameplay event of interest based on the user input.

According to some embodiments, the present technology is directed to amethod comprising: (a) detecting discharging of a projectile within avirtual gaming environment during a gameplay event of interest; (b)providing an interactive user interface that receives user input toalter a camera view of the gameplay event of interest to create acustomized camera view; and (c) providing a customized camera view ofthe gameplay event of interest based on the user input, wherein thecustomized camera view has a focal point of the projectile or a targetof the gameplay event of interest.

According to some embodiments, the present technology is directed to amethod comprising: (a) detecting a gameplay event of interest within avirtual gaming environment; and (b) displaying a customized camera viewof the gameplay event of interest based on user input received duringtraversal of a projectile from a weapon to a target, wherein thecustomized camera view has a focal point of the projectile.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, where like reference numerals refer toidentical or functionally similar elements throughout the separateviews, together with the detailed description below, are incorporated inand form part of the specification, and serve to further illustrateembodiments of concepts that include the claimed disclosure, and explainvarious principles and advantages of those embodiments.

The methods and systems disclosed herein have been represented whereappropriate by conventional symbols in the drawings, showing only thosespecific details that are pertinent to understanding the embodiments ofthe present disclosure so as not to obscure the disclosure with detailsthat will be readily apparent to those of ordinary skill in the arthaving the benefit of the description herein.

FIG. 1 is a schematic diagram of an example system for practicingaspects of the present technology.

FIG. 2 is a flowchart of a method for providing a customized camera viewduring a gameplay event of interest.

FIG. 3 is a flowchart of an example method for providing a customizedcamera view during a gameplay event of interest.

FIG. 4 is a flowchart of another example method for providing acustomized camera view during a gameplay event of interest.

FIG. 5 is a screenshot of an interactive user interface that receivesuser input to create a customized camera view of a gameplay event ofinterest.

FIG. 6 is a screenshot of a customized camera view created from the userinput received in FIG. 5.

FIG. 7 is a schematic diagram of an example computer device that can beutilized to implement aspects of the present technology.

FIG. 8 illustrates a view of a gameplay event of interest that comprisesan X-ray view of a target.

FIGS. 9A and 9B collectively illustrate views of an explosion of atarget during a gameplay event of interest.

FIGS. 10A and 10B collectively illustrate views of a user selectivelyaltering a projectile path during a gameplay event of interest.

DETAILED DESCRIPTION

The present disclosure is directed to systems and methods for providingcustomized camera views within gaming environments. For example, a userselectable camera view can be provided during a gameplay event ofinterest such as gameplay event of interest within a video game. In oneembodiment, the focal point of the camera view is a projectile beingdischarged from a firearm.

By way of another example, at the end of a mission, when the playerfires a winning shot (or any other shot of interest), a slow-motioncamera presentation tracks a projectile leaving the player's weapon,travelling across the map, and hitting a target. This presentation isreferred to as the “Shot Cam”. While the Shot Cam is active the playercan drag their finger (or mouse click) across the screen to adjust thecamera's angle. The projectile will remain the camera's focal point.

In some embodiments, the players can take screen captures of the ShotCam, and save these to their game device, by tapping a screen capturebutton displayed during the Shot Cam event.

According to some embodiments, a passive tutorial teaches players how toadjust the camera's angle. For example, a small graphic at the bottom ofthe screen, which depicts a finger swiping back and forth, will bedisplayed during the Shot Cam. After the player successfully performsthe swiping action in two or more Shot Cam events the graphic will nolonger be displayed—just as an example implementation.

Additional presentation elements can be implemented in some embodiments.In one embodiment an X-ray mode can be utilized to show internal damageto targets (see FIG. 8). Some embodiments may show the bullet exitingthe target.

In another embodiment the camera angle is provided from the targetperspective. In yet another embodiment the gameplay event of interestwill comprise a trigger for all explosive props in an environment whenthe projectile impacts the target (see FIGS. 9A-9B).

In some embodiments, the user can call out shot types on target deathsuch as head shot, gut shot, heart shot, and so forth.

The gaming system can also transition targets into “ragdoll” physicswhen hit, to allow for surprising interactions between the target andthe environment. For example, a user can fall off buildings or be throwninto the air by explosions. Another embodiment allows for players orobjects to be knocked into other players during explosions.

Additional environmental projectile related events can be implementedsuch as dropping things, breaking bridges, knocking over towers,electrocution, and so forth.

In an example embodiment, a visually enhanced view frame or tracking ofmulti-kills can occur when projectiles penetrate through multipletargets or multiple targets are thrown into the air by explosions.

The systems and methods can also improve or enhance visual details of atarget such as decaling, to enhance the appearance of the target for amore realistic experience.

The systems and methods can also implement custom prop interactions,such as when shooting through an enemy sniper's scope a shower of glassand sparks occur. These are merely examples of gameplay event ofinterest enhancements that are not intended to be limiting but areprovided for purposes of illustration.

According to the present disclosure, as users spend more time with thegame, the system can allow the user to unlock or purchase new contentthat can be seen during a Shot Cam event. Examples of new content caninclude new kill shot cameras, new enemy death animations, color filtersto the kill shot, bullet tracer effects seen during Shot Cams, newbullet skins (which may also dictate which camera angles are selected),text labels and stickers attached to screen captures, target deatheffects (e.g., enhancements of the event of interest), or anycombinations thereof.

In addition to controlling the camera's angle, a “director's suite” oftools will be included, which allow the player to pause, rewind, andedit the Shot Cam presentation.

In some embodiments, after viewing the Shot Cam presentation, playershave the option to share with other players through various social mediaplatforms such as FACEBOOK™, TWITTER™, INSTAGRAM™, and so forth. In someembodiments, users can share videos of an entire mission, the Shot Camevent itself, videos of a player-edited Shot Cam, and/or the customizedscreen captures from a Shot Cam. Users can save images for later use ina variety of settings, such as email tags, forum postings, and so forth.

These and other advantages of the present technology are provided hereinwith reference to the collective drawings.

FIG. 1 illustrates an exemplary architecture for practicing aspects ofthe present technology. The architecture comprises a server system,hereinafter “system 105,” that is configured to provide variousfunctionalities, which are described in greater detail throughout thisdocument. Generally the system 105 is configured to communicate withclient devices, such as client 115. The client 115 may include, forexample, a Smartphone, a laptop, a computer, or other similar computingdevice. An example of a computing device that can be utilized inaccordance with the present technology is described in greater detailwith respect to FIG. 7.

The system 105 may communicatively couple with the client 115 via apublic or private network, such as network 120. Suitable networks mayinclude or interface with any one or more of, for instance, a localintranet, a PAN (Personal Area Network), a LAN (Local Area Network), aWAN (Wide Area Network), a MAN (Metropolitan Area Network), a virtualprivate network (VPN), a storage area network (SAN), a frame relayconnection, an Advanced Intelligent Network (AIN) connection, asynchronous optical network (SONET) connection, a digital T1, T3, E1 orE3 line, Digital Data Service (DDS) connection, DSL (Digital SubscriberLine) connection, an Ethernet connection, an ISDN (Integrated ServicesDigital Network) line, a dial-up port such as a V.90, V.34 or V.34bisanalog modem connection, a cable modem, an ATM (Asynchronous TransferMode) connection, or an FDDI (Fiber Distributed Data Interface) or CDDI(Copper Distributed Data Interface) connection. Furthermore,communications may also include links to any of a variety of wirelessnetworks, including WAP (Wireless Application Protocol), GPRS (GeneralPacket Radio Service), GSM (Global System for Mobile Communication),CDMA (Code Division Multiple Access) or TDMA (Time Division MultipleAccess), cellular phone networks, GPS (Global Positioning System), CDPD(cellular digital packet data), RIM (Research in Motion, Limited) duplexpaging network, Bluetooth radio, or an IEEE 802.11-based radio frequencynetwork. The network 120 can further include or interface with any oneor more of an RS-232 serial connection, an IEEE-1394 (Firewire)connection, a Fiber Channel connection, an IrDA (infrared) port, a SCSI(Small Computer Systems Interface) connection, a USB (Universal SerialBus) connection or other wired or wireless, digital or analog interfaceor connection, mesh or Digi® networking.

The client 115 generally comprises a processor, 130, a network interface135, and a memory 140. According to some embodiments, the memory 140comprises logic (e.g., instructions) 145 that can be executed by theprocessor 130 to perform various methods. For example, the logic mayinclude a video game client application (hereinafter “gaming application150”), which is configured to provide the functionalities described ingreater detail herein.

It will be understood that the functionalities described herein, whichare attributed to the system 105, may also be executed within the client115. That is, the client 115 may be programmed to execute thefunctionalities described herein. In other instances, the system 105 andclient 115 may cooperate to provide the functionalities describedherein, such that the client 115 is provided with a client-sideapplication that interacts with the system 105 such that the system 105and client 115 operate in a client/server relationship. Complexcomputational features may be executed by the system 105, while simpleoperations that require fewer computational resources may be executed bythe client 115, such as data gathering and data display.

In general, a user interface module 125 may be executed by the client115 to provide various graphical user interfaces (GUIs) that allow usersto interact with the system 105. In some instances, GUIs are generatedby execution of the gaming application 150. Users may interact with thesystem 105 using, for example, a client 115. The system 105 may generateweb-based interfaces for the client.

The gaming application 150 can be executed locally on a user device(e.g., client 115), such as a Smartphone or tablet device.Alternatively, the gaming application 150 can be accessed by a userdevice over a network. Thus, the gaming application 150 can be executedon a server and accessed by the user device using a browser application.The server will serve GUIs of the gaming application 150 as web pages ofa standard or mobile website.

In some embodiments, the gaming application 150 is configured to providethe user with a gaming experience, such as a virtual gaming environmentwhere the user participates in gameplay. Examples of virtual gamingenvironments include, but are not limited to, role playing games, firstperson shooter games, multiplayer games, sporting games, and so forth.

According to some embodiments, the gaming application 150 is configuredto provide the user with Shot Cam features, which allow the user tocreate customized camera views of gameplay events of interest, such asthe use of a weapon within the game

FIG. 2 is a flowchart of an example method for providing a customizedcamera view during a gameplay event of interest. The method can beexecuted by either the system 105 or the client 115. The followingdescription is illustrative of the method being executed by the client115. In some embodiments, the method includes detecting 205 dischargingof a weapon within a virtual gaming environment during a gameplay eventof interest. For example, a gameplay event of interest can include anend of mission or game activity where a target, such as an enemy, iskilled by a player. The gameplay event of interest is due to a playershooting the target in a manner that results in the a compelling orinteresting animation event (or other similar event) of the target. Thecompelling/interesting shot could also include an explosion of a targetother than a person such as a building or vehicle, just as anotherexample.

In another embodiment, the Shot Cam can be invoked any time a playerkills another player during gameplay. Thus, the gameplay event ofinterest need not be tied to an end of mission or game event.

When the client detects that a weapon has been discharged and that suchdischarging is tied to a kill shot event, the method includes providing210 an interactive user interface that receives user input to create acustomized camera viewing experience of the gameplay event of interestinvolving a target. An example of an interactive user interface can befound in FIG. 5. The interactive user interface can include an initialview that comprises a camera view of the virtual gaming environment thathas a projectile directed at the target.

The interactive user interface comprises a view of the game environmentwith an input mechanism such as a touch screen input. The coupling ofthe input mechanism with the view creates the interactive userinterface. In one embodiment, the input mechanism is a hand icon thatcan be selected through touch input or mouse click input.

Once the interactive user interface is displayed, the method includesreceiving 215 user input from the interactive user interface. Forexample, the user can input swipe, tap, or pinch gestures as user input.Each of these gestures can be associated with a controlling aspect thatcreates a customized camera view. For example, swiping laterally on thevisual icon rotates the camera view around the projectile in ahorizontal manner. A longitudinal swipe causes the camera view to rotatearound the projectile in a vertical manner. Swipes in between lateraland longitudinal provide camera view rotations that have both horizontaland vertical components. Pinching gestures can create zoom effects inand out relative to the projectile.

In some embodiments, touch and tap gestures can be utilized to speed upor slow down movement of projectile towards the target. Thus, a playercan view the compelling/interesting shot in slow motion, with acustomized camera view having a focal point of the projectile.

Once the user input is received, the method includes providing 220 acustomized camera view of the gameplay event of interest based on theuser input.

As mentioned above, in some embodiments, if the user input comprises aclick or tap within the interactive user interface, the bullet slows itstraversal speed towards the target. If the user input of the click ortap is removed the bullet increases its traversal speed towards thetarget.

If the user input comprises a swipe action within the interactive userinterface, a rotation of camera angle of the customized camera viewoccurs. Again, this rotation can include both vertical and horizontalcomponents. The rotation of the camera angle can correspond to adirection of the swipe action.

As illustrated in FIG. 8, the client can display an x-ray view of thetarget 802 as a projectile 804 approaches the target 802. As illustratedin FIGS. 9A and 9B, the client can detonate explosive props 902 withinthe virtual gaming environment when impacted with a projectile 904.

FIG. 3 is flowchart of another example method for providing a customizedgameplay event of interest view. According to some embodiments, themethod includes detecting 305 discharging of a projectile from a firearmwithin a virtual gaming environment during a gameplay event of interest.As mentioned above, this can include a player firing a weapon duringgame play, where the firing of the weapon is determined by the gamingapplication to be a gameplay event of interest where the target iskilled.

The method also includes providing 310 an interactive user interfacethat receives user input to alter a camera view of the gameplay event ofinterest to create a customized camera view. The method can alsocomprise providing 315 a customized camera view of the gameplay event ofinterest based on the user input. To be sure, the customized camera viewhas a focal point of the projectile or a target of the gameplay event ofinterest. In some embodiments, the focal point can be changed to a focalpoint of the target.

Next, the method comprises recording 320 the gameplay event of interestusing the customized camera view and sharing 325 the recording on asocial network.

In some embodiments, the customized camera view can include a reartrailing view, a side tracking view, an orbiting view, all of which havea focal point of the projectile.

In one embodiment, the method can include selectively changing a colorfilter of the customized camera view. In another embodiment, the methodcomprises placing projectile tracer effect into the customized cameraview.

According some embodiments, the method can comprise receiving 330projectile path adjustments from the end user during traversal of theprojectile to the target during the gameplay event of interest. Usingthe adjustments the method can include the gaming applicationselectively adjusting 335 an impact position of the projectile based onthe projectile path adjustments. An example of the effect is illustratedin FIGS. 10A and 10B.

For example, the user can select the projectile with a tap or double tapaction. When the user selects the projectile, the user can drag theprojectile into having a different trajectory from its initialtrajectory. This can cause the projectile to impact the target at adifferent location than its initial impact location would have been whenthe projectile was initially discharged. For example, if the projectilewas discharged onto a path where the projectile was to impact the torsoof the target, the user can selectively alter the trajectory of theprojectile such that it impacts a head of the target instead. In someembodiments, the user is provided with a trajectory line thatillustrates a current path of the projectile. This line is selectivelyadjusted as the user moves the bullet around the gaming environment.

FIG. 4 illustrates another flowchart of a method for providing acustomized camera view of a gameplay event of interest. In thisembodiment, the method includes detecting 405 a gameplay event ofinterest within a virtual gaming environment. The method also includesdisplaying 410 a customized camera view of the gameplay event ofinterest based on user input receiving during traversal of a projectilefrom a weapon to a target. Again, the customized camera view has a focalpoint of the projectile. The method can optionally include imposing 415a passive tutorial on the customized camera view that instructs a userin adjusting the customized camera view. In another embodiment, themethod includes allowing 420 the user to perform any of pausing,rewinding, and editing the customized camera view of the gameplay eventof interest.

FIG. 5 illustrates an example interactive user interface 500 thatcomprises a view of a gaming environment 505 after the initiation of agameplay event of interest. The gameplay event of interest is displayedinitially from the view point of a player who has discharged a weapon. Arear view of a projectile 515 (e.g., a bullet) is provided. Associatedwith the projectile 515 is a passive tutorial icon 520 that instructsthe user to swipe or otherwise provide tactile input to create acustomized camera view.

For example, the passive tutorial icon 520 includes a hand with extendedindex finger and a directional arrow. The user can provide their userinput onto the interactive user interface 500, and specifically withreference to the passive tutorial icon 520.

The input is received by the gaming application and translated intocamera view customization parameters. For example, if the user swipeshorizontally, the camera view will rotate around the projectile 515,changing the camera view from the initial position as illustrated inFIG. 6. In FIG. 6, the view of the gameplay event has changed throughrotation of a camera view about a focal point of the bullet. Whereas inFIG. 5, the view is of a left-handed side of a target 525, the view inFIG. 6 is of a right-handed side of the target 525. Collectively, FIGS.5 and 6 illustrate the process of allowing a user to selectively changea camera view around a focal point during gameplay.

Again, the user can also utilize input to slow down, speed up, or changethe trajectory of the bullet.

In some embodiments, hardware on the user device can be utilized tocontrol the camera view. By way of example, an accelerometer or otherposition/orientation sensing device of the client (such as a Smartphoneor tablet) can be used to control the camera view. In an example usecase, the user is engaged in game play on their mobile device. Duringgame play the user fires a weapon as described above. Once the bullet istraveling to a designated target, the user can tilt the mobile device.The tilt of the mobile device can occur relative to a horizontal plane,a vertical plane, or combinations thereof. As the user tilts the mobiledevice, the camera view is selectively changed to match. When the usertilts the phone in the horizontal plane the camera view is shifted leftor right around the bullet. When the user tilts the phone in thevertical plane the camera view is shifted above or below the bullet.Combinations of horizontal and vertical tilt will allow the user toplace the camera view at any angle relative to the bullet and provide amore robust and granular mechanism for selecting camera view position.

As mentioned above, FIGS. 10A and 10B illustrate the selective changingof a projectile path by a user during an event of interest. For example,FIG. 10A illustrates a projectile 1002 traveling on an initial path1004, visually illustrated with a tracer path. In this instance theprojectile 1002 is traveling approximately at the leg of a target 1006.Referring to FIG. 10B, when the user touches or clicks the display (inthis example using a two finger swipe action) of their device duringthis event, the user can swipe upwards to change the projectile 1002onto a second path 1008 that is aligned with a head of the target 1006.

As mentioned above, the interactive display provided to the playeroccurs when the player discharges a firearm or otherwise activates aninstance of the interactive display (such as with a unique set ofkeystrokes or button sequences).

As used herein, the term “module”, “controller”, or “application” mayalso refer to any of an application-specific integrated circuit(“ASIC”), an electronic circuit, a processor (shared, dedicated, orgroup) that executes one or more software or firmware programs, acombinational logic circuit, and/or other suitable components thatprovide the described functionality.

FIG. 7 is a diagrammatic representation of an example machine in theform of a computer system 1, within which a set of instructions forcausing the machine to perform any one or more of the methodologiesdiscussed herein may be executed. In various example embodiments, themachine operates as a standalone device or may be connected (e.g.,networked) to other machines. In a networked deployment, the machine mayoperate in the capacity of a server or a client machine in aserver-client network environment, or as a peer machine in apeer-to-peer (or distributed) network environment. The machine may be arobotic construction marking device, a base station, a personal computer(PC), a tablet PC, a set-top box (STB), a personal digital assistant(PDA), a cellular telephone, a portable music player (e.g., a portablehard drive audio device such as an Moving Picture Experts Group AudioLayer 3 (MP3) player), a web appliance, a network router, switch orbridge, or any machine capable of executing a set of instructions(sequential or otherwise) that specify actions to be taken by thatmachine. Further, while only a single machine is illustrated, the term“machine” shall also be taken to include any collection of non-genericmachines that individually or jointly execute a set (or multiple sets)of instructions to perform any one or more of the methodologiesdiscussed herein. To be sure, the methodologies described herein, whileamenable to execution through the hardware described herein, encompassunconventional and non-routine processes which would be executable byany generic computer hardware using well understood hardware andsoftware. That is, the systems described herein are specific purposecomputing machines.

The example computer system 1 includes a processor or multipleprocessors 5 (e.g., a central processing unit (CPU), a graphicsprocessing unit (GPU), or both), and a main memory 10 and static memory15, which communicate with each other via a bus 20. The computer system1 may further include a video display 35 (e.g., a liquid crystal display(LCD)). The computer system 1 may also include input device(s) 30 (e.g.,a keyboard), a cursor control device (e.g., a mouse), a voicerecognition or biometric verification unit (not shown), a drive unit 37(also referred to as disk drive unit), a signal generation device 40(e.g., a speaker), and a network interface device 45. The computersystem 1 may further include a data encryption module (not shown) toencrypt data.

The drive unit 37 includes a computer or machine-readable medium 50 onwhich is stored one or more sets of instructions and data structures(e.g., instructions 55) embodying or utilizing any one or more of themethodologies or functions described herein. The instructions 55 mayalso reside, completely or at least partially, within the main memory 10and/or within the processors 5 during execution thereof by the computersystem 1. The main memory 10 and the processors 5 may also constitutemachine-readable media.

The instructions 55 may further be transmitted or received over anetwork via the network interface device 45 utilizing any one of anumber of well-known transfer protocols (e.g., Hyper Text TransferProtocol (HTTP)). While the machine-readable medium 50 is shown in anexample embodiment to be a single medium, the term “computer-readablemedium” should be taken to include a single medium or multiple media(e.g., a centralized or distributed database and/or associated cachesand servers) that store the one or more sets of instructions. The term“computer-readable medium” shall also be taken to include any mediumthat is capable of storing, encoding, or carrying a set of instructionsfor execution by the machine and that causes the machine to perform anyone or more of the methodologies of the present application, or that iscapable of storing, encoding, or carrying data structures utilized by orassociated with such a set of instructions. The term “computer-readablemedium” shall accordingly be taken to include, but not be limited to,solid-state memories, optical and magnetic media, and carrier wavesignals. Such media may also include, without limitation, hard disks,floppy disks, flash memory cards, digital video disks, random accessmemory (RAM), read only memory (ROM), and the like. The exampleembodiments described herein may be implemented in an operatingenvironment comprising software installed on a computer, in hardware, orin a combination of software and hardware.

Not all components of the computer system 1 are required and thusportions of the computer system 1 can be removed if not needed, such asInput/Output (I/O) devices (e.g., input device(s) 30). One skilled inthe art will recognize that the Internet service may be configured toprovide Internet access to one or more computing devices that arecoupled to the Internet service, and that the computing devices mayinclude one or more processors, buses, memory devices, display devices,input/output devices, and the like. Furthermore, those skilled in theart may appreciate that the Internet service may be coupled to one ormore databases, repositories, servers, and the like, which may beutilized in order to implement any of the embodiments of the disclosureas described herein.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed. Thedescription of the present technology has been presented for purposes ofillustration and description, but is not intended to be exhaustive orlimited to the present technology in the form disclosed. Manymodifications and variations will be apparent to those of ordinary skillin the art without departing from the scope and spirit of the presenttechnology. Exemplary embodiments were chosen and described in order tobest explain the principles of the present technology and its practicalapplication, and to enable others of ordinary skill in the art tounderstand the present technology for various embodiments with variousmodifications as are suited to the particular use contemplated.

Aspects of the present technology are described above with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of thepresent technology. It will be understood that each block of theflowchart illustrations and/or block diagrams, and combinations ofblocks in the flowchart illustrations and/or block diagrams, can beimplemented by computer program instructions. These computer programinstructions may be provided to a processor of a general purposecomputer, special purpose computer, or other programmable dataprocessing apparatus to produce a machine, such that the instructions,which execute via the processor of the computer or other programmabledata processing apparatus, create means for implementing thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

These computer program instructions may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present technology. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof code, which comprises one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock may occur out of the order noted in the figures. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently, or the blocks may sometimes be executed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

In the following description, for purposes of explanation and notlimitation, specific details are set forth, such as particularembodiments, procedures, techniques, etc. in order to provide a thoroughunderstanding of the present invention. However, it will be apparent toone skilled in the art that the present invention may be practiced inother embodiments that depart from these specific details.

Reference throughout this specification to “one embodiment” or “anembodiment” means that a particular feature, structure, orcharacteristic described in connection with the embodiment is includedin at least one embodiment of the present invention. Thus, theappearances of the phrases “in one embodiment” or “in an embodiment” or“according to one embodiment” (or other phrases having similar import)at various places throughout this specification are not necessarily allreferring to the same embodiment. Furthermore, the particular features,structures, or characteristics may be combined in any suitable manner inone or more embodiments. Furthermore, depending on the context ofdiscussion herein, a singular term may include its plural forms and aplural term may include its singular form. Similarly, a hyphenated term(e.g., “on-demand”) may be occasionally interchangeably used with itsnon-hyphenated version (e.g., “on demand”), a capitalized entry (e.g.,“Software”) may be interchangeably used with its non-capitalized version(e.g., “software”), a plural term may be indicated with or without anapostrophe (e.g., PE's or PEs), and an italicized term (e.g., “N+1”) maybe interchangeably used with its non-italicized version (e.g., “N+1”).Such occasional interchangeable uses shall not be consideredinconsistent with each other.

Also, some embodiments may be described in terms of “means for”performing a task or set of tasks. It will be understood that a “meansfor” may be expressed herein in terms of a structure, such as aprocessor, a memory, an I/O device such as a camera, or combinationsthereof. Alternatively, the “means for” may include an algorithm that isdescriptive of a function or method step, while in yet other embodimentsthe “means for” is expressed in terms of a mathematical formula, prose,or as a flow chart or signal diagram.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the invention. Asused herein, the singular forms “a”, “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising,” when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

It is noted that the terms “coupled,” “connected”, “connecting,”“electrically connected,” etc., are used interchangeably herein togenerally refer to the condition of being electrically/electronicallyconnected. Similarly, a first entity is considered to be in“communication” with a second entity (or entities) when the first entityelectrically sends and/or receives (whether through wireline or wirelessmeans) information signals (whether containing data information ornon-data/control information) to the second entity regardless of thetype (analog or digital) of those signals. It is further noted thatvarious figures (including component diagrams) shown and discussedherein are for illustrative purpose only, and are not drawn to scale.

If any disclosures are incorporated herein by reference and suchincorporated disclosures conflict in part and/or in whole with thepresent disclosure, then to the extent of conflict, and/or broaderdisclosure, and/or broader definition of terms, the present disclosurecontrols. If such incorporated disclosures conflict in part and/or inwhole with one another, then to the extent of conflict, the later-dateddisclosure controls.

The terminology used herein can imply direct or indirect, full orpartial, temporary or permanent, immediate or delayed, synchronous orasynchronous, action or inaction. For example, when an element isreferred to as being “on,” “connected” or “coupled” to another element,then the element can be directly on, connected or coupled to the otherelement and/or intervening elements may be present, including indirectand/or direct variants. In contrast, when an element is referred to asbeing “directly connected” or “directly coupled” to another element,there are no intervening elements present. The description herein isillustrative and not restrictive. Many variations of the technology willbecome apparent to those of skill in the art upon review of thisdisclosure. For example, the technology is not limited to use forstopping email threats, but applies to any messaging threats includingemail, social media, instant messaging, and chat.

While various embodiments have been described above, it should beunderstood that they have been presented by way of example only, and notlimitation. The descriptions are not intended to limit the scope of theinvention to the particular forms set forth herein. To the contrary, thepresent descriptions are intended to cover such alternatives,modifications, and equivalents as may be included within the spirit andscope of the invention as defined by the appended claims and otherwiseappreciated by one of ordinary skill in the art. Thus, the breadth andscope of a preferred embodiment should not be limited by any of theabove-described exemplary embodiments.

What is claimed is:
 1. A method, comprising: detecting discharging of aweapon within a virtual gaming environment during a gameplay event ofinterest that comprises the discharging of the weapon; providing aninteractive graphical user interface displayed on a touch screen displaydevice that comprises the virtual gaming environment, the interactivegraphical user interface receiving touch-based user input comprising anyof a swipe, tap or pinch on the touch screen display device to create acustomized camera viewing experience of the gameplay event of interestinvolving a target, wherein the customized camera viewing experiencecomprises an entire event from the discharging of the weapon, travelingof a projectile from the weapon, and hitting the target by theprojectile, further wherein the gameplay event of interest comprises atrigger for explosive props in an environment when the projectileimpacts the target; after the discharging of the weapon and during thetraveling of the projectile, receiving the touch-based user input on theinteractive graphical user interface; providing a customized camera viewof the gameplay event of interest based on the touch-based user input;and capturing screenshots during the customized camera viewingexperience.
 2. The method according to claim 1, wherein the interactivegraphical user interface includes a camera view of the virtual gamingenvironment that comprises the projectile directed at the target.
 3. Themethod according to claim 1, wherein when the touch-based user inputcomprises a touch within the interactive graphical user interfacedisplayed on the touch screen display device, the projectile slows itstraversal speed towards the target.
 4. The method according to claim 3,wherein if the touch-based user input is removed, the projectileincreases its traversal speed towards the target.
 5. The methodaccording to claim 1, wherein when the touch-based user input comprisesa swipe action within the interactive graphical user interface, arotation of camera angle of the customized camera view occurs.
 6. Themethod according to claim 5, wherein the rotation of the camera anglecorresponds to a direction of the swipe action.
 7. The method accordingto claim 6, wherein a focal point of the customized camera view is theprojectile discharged from the weapon.
 8. The method according to claim1, further comprising displaying an x-ray view of the target as theprojectile impacts the target.
 9. The method according to claim 1,further comprising detonating explosive props within the virtual gamingenvironment when the target is impacted.
 10. The method according toclaim 1, wherein the customized camera view comprises a camera anglethat is provided from the target's perspective.
 11. A method,comprising: detecting discharging of a projectile from a weapon within avirtual gaming environment during a gameplay event of interest thatcomprises the discharging of the weapon; providing an interactivegraphical user interface displayed on a display device that receivestouch-based user input, which can be utilized by a user to alter acamera view of the gameplay event of interest to create a customizedcamera view during the gameplay event of interest; providing thecustomized camera view of the gameplay event of interest based on thetouch-based user input, wherein the customized camera view has a focalpoint of the projectile or a plurality of targets of the gameplay eventof interest; during traveling of the projectile, receiving thetouch-based user input on the interactive graphical user interface;capturing screenshots during the customized camera viewing experience;and selectively changing the customized camera view to any of a reartrailing view, a side tracking view, an orbiting view, all of which havea focal point of the projectile, wherein the customized camera viewcomprises a visually altered view frame or tracking when the projectilepenetrates through each of the plurality of targets.
 12. The methodaccording to claim 11, further comprising selectively changing a colorfilter of the customized camera view.
 13. The method according to claim11, further comprising placing a path highlight effect into thecustomized camera view.
 14. The method according to claim 11, furthercomprising: receiving projectile path adjustments from an end userduring traversal of the projectile to a target during the gameplay eventof interest; and selectively adjusting an impact position of theprojectile based on the projectile path adjustments.
 15. A method,comprising: detecting a gameplay event of interest within a virtualgaming environment that comprises discharging of a projectile from aweapon; displaying a customized camera view of the gameplay event ofinterest based on touch-based user input received during traversal ofthe projectile from the weapon to a target, the touch-based user inputbeing received within an interactive graphical user interface displayedon a display device, the customized camera view having a focal point ofthe projectile, wherein the customized camera view comprises an entireevent from the discharging of the weapon, traveling of the projectile,and hitting the target by the projectile, further wherein the gameplayevent of interest comprises a trigger for explosive props in anenvironment when the projectile impacts the target; receiving a swipeaction within the interactive graphical user interface during thetraveling of the projectile; and rotating a camera angle of thecustomized camera view based on the swipe action.
 16. The methodaccording to claim 15, further comprising imposing a passive tutorial onthe customized camera view that instructs a user in adjusting thecustomized camera view.
 17. The method according to claim 16, furthercomprising allowing the user to perform any of pausing, rewinding, andediting the customized camera view of the gameplay event of interest.